Re-presentation of previously presented content

ABSTRACT

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for re-presentation of previously presented content. One of the methods includes providing a video advertisement for presentation on a user device along with a video content item, in response to receiving a request to view the video content item. First information is received that indicates that a user of the user device wants to skip the video advertisement or that the video advertisement has completed play. After receipt of the first information, a control to facilitate re-presentation of the video advertisement is provided. Second information is received indicating that the user of the user device has interacted with the control. The video advertisement is provided for re-presentation to the user device.

RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.14/318,400, filed on Jun. 27, 2014, entitled “Re-Presentation ofPreviously Presented Content”, which is hereby incorporated by referencein its entirety.

BACKGROUND

Videos can be streamed over a network, e.g., the Internet, to users onclient devices. Users can request videos related to specific subjects,and watch the videos on their user devices. The videos can be stored ona server accessible to the network, and streamed to user devices. Theserver can provide a resource or application, e.g., a webpage,displaying a user interface configured to allow for the searching ofstored videos. For instance, a user can provide a search string, e.g.,“cat videos”, to the server and receive a list of videos relevant to thesearch string. A user can then select a video and download or otherwisereceive (e.g., a stream) the selected video from the server.

After receiving a selection of a video by a user, the server can alsostream a video advertisement to the user's device. The videoadvertisement can be related to the selected video, or can be a randomvideo advertisement or otherwise selected. The server can provide (e.g.,stream) the selected video such as before, during or after streaming theentirety or portion of the video advertisement to the user.

SUMMARY

This specification describes technologies relating to re-presentation ofpreviously displayed content.

In general, one innovative aspect of the subject matter described inthis specification can be embodied in methods that include the actionsof: in response to receiving a request to view a video content item,providing a video advertisement for presentation on a user device alongwith the video content item; receiving first information indicating thata user of the user device wants to skip the video advertisement or thatthe video advertisement has completed play; after receiving the firstinformation, providing a control to facilitate re presentation of thevideo advertisement; receiving second information indicating that theuser of the user device has interacted with the control; and providingthe video advertisement for re presentation to the user device.

These and other embodiments can each optionally include one or more ofthe following features. Providing the video advertisement furthercomprises: obtaining a static image from the video advertisement; andproviding the static image for presentation along with the video contentitem. The actions include receiving information indicating that the userhas interacted with the static image; and providing the videoadvertisement for re presentation. The actions include determining astate of the video advertisement. Providing a control comprises:determining, from the state of the video advertisement, that a play timeof the video advertisement is greater than a threshold; and in responseto the determination, providing the control to facilitate representation of the video advertisement. Providing a control comprises:determining, from the state of the video advertisement, that a play timeof the video advertisement is less than a threshold; and in response tothe determination, providing the control to facilitate re presentationof the video advertisement. Providing the video advertisement for representation comprises: determining a play time of the videoadvertisement from the state of the video advertisement; and providingthe video advertisement for presentation to the user device, wherein thevideo advertisement is provided from the play time. Providing the videoadvertisement for re presentation comprises: determining, from the stateof the video advertisement, that a play time of the video advertisementis less than a threshold; and providing a video advertisement with ashorter play time for presentation to the user device. The actionsinclude obtaining information identifying an average watch time of thevideo advertisement; determining, from the state of the videoadvertisement, that a play time of the video advertisement is less thanthe average watch time; and providing a video advertisement with ashorter play time for presentation to the user device. The actionsinclude determining a state of the video content item at a time of theinteraction; determining, from the state of the video content item, aplay time of the video content item; providing the video advertisementfor re presentation to the user device; and providing the video contentitem from the play time for re presentation to the user device.Providing the video advertisement for re presentation comprises:providing a second control to facilitate skipping the videoadvertisement. Providing the video advertisement for re presentationcomprises: providing a different video advertisement for presentation tothe user device. The actions include redirecting the user device to aweb page of a sponsor of the video advertisement. The actions includeassociating the video advertisement with a first cost; providing thevideo advertisement for re presentation to the user device; and inresponse to the providing, associating the video advertisement with asecond greater cost.

Particular embodiments of the subject matter described in thisspecification can be implemented so as to realize none, one or more ofthe following advantages. A server can receive a user selection of avideo for display on the user's device, and in response can firstprovide a video advertisement for display on the user device followed bydisplay of the client's selection. Upon receiving informationidentifying that the user wishes to skip the video advertisement, theserver can provide the selected video and a control configured tore-present the video advertisement. That is, the server can ensure thata user always has the ability to have the video advertisement availablefor re-presentation. If a user accidentally skips the videoadvertisement (such a result of a habit), he/she now has a method toview the video advertisement again. Furthermore, the server can providea different version of the video advertisement if the server determinesthe different version is likely to be more effective with the user.Additionally, the server can associate a higher cost (e.g., charge more)when re-presenting a video advertisement as opposed to the cost for orassociated with an initial presentation.

The details of one or more embodiments of the subject matter describedin this specification are set forth in the accompanying drawings and thedescription below. Other features, aspects, and advantages of thesubject matter will become apparent from the description, the drawings,and the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A is an example of a user interface of a user device thatillustrates re-presentation of a content item.

FIG. 1B is another example of a user interface of a user device thatillustrates re-presentation of a content item.

FIG. 2 is a diagram of a content re-presentation system.

FIG. 3 illustrates an example process of providing a content item forre-presentation.

FIG. 4 is block diagram of an example computer system.

Like reference numbers and designations in the various drawings indicatelike elements.

DETAILED DESCRIPTION

Systems, methods and computer program products for presenting andre-presenting content to a user are provided. In some implementations, avideo content item is initially presented to a user. The video contentitem can be of the form of an advertisement that accompanies othercontent, such as a selected resource, e.g., another video item. Uponreceipt of a skip command in association with the presentation of thevideo content item or completion of the presentation, e.g., based ondetected interaction with a first control such as a skip button, asecond control can be provided to facilitate re-presentation of thevideo content item. After receiving second information indicating thatthe user of the user device has interacted with the second control, thevideo content item can be provided for re-presentation to the userdevice.

FIG. 1A is an example of a user interface 102 of a user device thatillustrates re-presentation of a first content item, e.g., a videoadvertisement 106. A user device executing software 104, e.g., anInternet browser, configured to display a resource, e.g., a webpage, canpresent a video advertisement 106 from a server for display on the userdevice, e.g., a computer or mobile device. In this example, a user hasselected a video content item, and has received in response a videoadvertisement 106 for presentation prior to receiving the selected videocontent item. The video advertisement 106 includes a first control 108,e.g., a button, configured to receive a user interaction, e.g., a click,a swipe, user entered audio such as speech, or a touch. Upon receiving auser interaction in association with the first control 108, informationcan be provided to the server identifying that the user wants to skipthe video advertisement 106 and receive the selected video content itemfor presentation on the user device.

FIG. 1B is an example of a user interface 102 of a user device thatillustrates re-presentation of a first content item, e.g., videoadvertisement 106. The software 104, e.g., an Internet browser, ispresenting the selected video content item 110. The selected videocontent item 110 includes a second control 112, e.g., a button,configured to receive a user interaction, e.g., a click, a swipe, userentered audio such as speech, or a touch. Upon receipt of the userinteraction, information can be provided to the server identifying thatthe user wants to view the video advertisement 106. That is, the secondcontrol 112 can identify to the server that the user wants to receivethe video advertisement 106 for re-presentation on the user device. Insome implementations the second control can include text identifyingthat a user can interact with the second control to receive the videoadvertisement 106 for re-presentation. For instance the control candisplay “Watch Ad Again?” or “Display Video Advertisement,” orequivalent phrases.

FIG. 2 is a diagram of a content re-presentation system 202 used forre-presentation of certain content, e.g., video advertisements. Thecontent re-presentation system 202 can include a video content itemengine 206 and a sponsored video content engine 204 connected to a userdevice 212, e.g., a client device, a computer, tablet, hybrid computingdevice or mobile device, through a network 210, e.g., the Internet. Thevideo content item engine 206 and the sponsored video content itemengine 204 can be one or more computing resources, e.g., particularcomputer system hardware or software executing on one or more computersystems, e.g., virtual machines. In some implementations the videocontent item engine 206 and the sponsored video content item engine 204can be a part of the same system, e.g., the content re-presentationsystem 202. In some implementations the video content item engine 206and sponsored video content item engine 204 can be different computingresources and communicate through a network, e.g., network 210.

The user device 212 can access a resource, e.g., a webpage, configuredto receive a request to view a selected video content item 216. The userdevice 212 can provide the selection of a video content item 216 to thevideo content engine 206 and receive the selected video content item 216for presentation on the user device 212. The video content items can bevideos uploaded by other users, e.g., cat videos, movie trailers, videosabout nature, technology news, and so on.

Upon receipt of a request to view a selected video content item 216 bythe content re-presentation system 202, the sponsored video content itemengine 204 can provide a first content item, e.g., a video advertisement214, for presentation on the user device 212. The video advertisement214 can be stored on the on or in association with contentre-presentation system 202, or can be obtained from a third party andprovided for presentation on the user device 212.

The sponsored video content item engine 204 can provide a first controlwith the first content item, e.g., the video advertisement 214,configured to receive interactions from the user device 212 identifyingthat a user 222 wants to skip the first content item. In someimplementations the first control is configured to accept interactionsafter a threshold viewing time, e.g., the user 222 has to view the videoadvertisement 214 for 3, 5, or 8 seconds before the first control willfacilitate skipping the video advertisement. After receiving informationidentifying that the user 222 wants to skip the first content item,e.g., video advertisement 214, the sponsored video content item engine204 or outside server resource provides the selected video content item216 for presentation on the user device 212. In some implementations thecontent re-presentation system 202 can store a state of the firstcontent item that identifies a playing time of the video content item,e.g., the amount of time the content item was played before beingskipped.

A second control 218 can be provided with the selected video contentitem 216 that is configured to receive interactions from the user device212 identifying that the user 222 wants to re-view the first contentitem, e.g., the video advertisement 214. In some implementations, uponreceipt of an interaction the content re-presentation system 202 canstore a state of the selected video content item 216 that identifies aplaying time. After receiving information identifying that the user 222has interacted with the second control 218, the sponsored video contentitem engine 204 can provide the first content item, e.g., the videoadvertisement 214, for re-presentation on the user device 212. Uponre-viewing/or re-presenting the first content item, e.g., the videoadvertisement 214, the content re-presentation system 202 can providethe selected video content item 216 for re-presentation on the userdevice 212. In some implementations the selected video content item 216can be presented from the point the second control was interacted with,e.g., the playing time identified by the stored state of the videocontent item 216.

FIG. 3 illustrates an example process 300 for providing a video contentitem for re-presentation. For convenience, the process 300 will bedescribed as being performed by a system of one or more computerslocated in one or more locations. For example, the contentre-presentation system 202 of FIG. 2, appropriately programmed inaccordance with this specification, can perform the process 300.

A request to view a video content item is received (step 302). A user ofa user device can access a resource identifying one or more videocontent items for selection, e.g., a webpage, and provide a selection ofa video content item to the system. The video content items can bevideos stored on the system and uploaded by users of the system, or canbe video content items obtained from a computer resource outside of thesystem through a network, e.g., the Internet. For instance, the videocontent items can include videos about cats, politics, musings,technology reviews, and so on. The resource can present one or morevideo content items to the user of the user device for selection, or theresource can receive a query from the user and a server can obtain videocontent items relevant to the query.

A selected or otherwise designated content item is provided forpresentation on the user device (step 304). For example, the system canidentify a selected video item and also a first content item, e.g., avideo advertisement, that is related or otherwise assigned to theselected video item. The first content item can be a video advertisementthat is presented, for example, to offset costs associated with thepresentation of the selected video content item. A serving system canobtain the first content item, e.g., the video advertisement, from adatabase of video advertisements stored on the system or from anadvertiser. The system stores information identifying the videoadvertisement with the user, e.g., the user's IP (internet protocol)address of the user device or a user log in name to the system. Thesystem provides the first content item, e.g., video advertisement, forpresentation by transmitting the first content item to the user device.Transmitting can include streaming the first content item, e.g., videoadvertisement, by providing subsets of the video advertisementcontinuously over the length of the video advertisement, or transmittingcan include providing the entire first content item, e.g., videoadvertisement, for storage on the user device.

Information is received that the user wants to skip the first contentitem, e.g., the video advertisement, and receive the selected videocontent item for presentation on the user device (step 306). In someimplementations a first control can be provided with the first contentitem and when interacted with, can result in the skipping of the firstcontent item. For example, the control can include text identifying thatthe first content item, e.g., video advertisement, can be skipped, e.g.,the control can include “Skip Advertisement” or equivalent text. Thecontrol can be interacted with by the user, e.g., the user can click onthe control, swipe in a direction on the control, speak into the userdevice, and so on. If the user views the entirety of the first contentitem, the system can receive information identifying that the firstcontent item has completed play and provide the initially selected videocontent item for presentation on the user device.

The state of the first content item can be stored, e.g., the playingtime of the video advertisement can be stored. The state can be storedby the system and associated with the user.

A second control is provided to facilitate re-presentation of the firstcontent item, e.g., video advertisement (step 308). For example, thecontent re-presentation system 202 or another serving system can obtainthe selected video content item, e.g., from local storage or from acomputing resource outside of the system, for presentation on the userdevice. The second control can be configured to provide information thatthe user wants to re-view the first content item, e.g., videoadvertisement. The second control can be presented concurrently with thepresentation of the selected video content item, or provided as anoverlay, e.g., on top of the first content item such as in a corner ofthe video content item away from the user's notice.

In some implementations the content re-presentation system 202 can firstdetermine a playing time of the first content item from the storedstate, and provide or activate the first control upon determining thatthe play time exceeds a threshold, e.g., 3, 5, or 8 seconds. In someimplementations the content re-presentation system 202 can provide thefirst control upon determining that the play time is less than athreshold, e.g., 3, 5, or 8 seconds.

In some implementations a static image can be retrieved from the firstcontent item and the method can further include providing the staticimage for presentation along with the video content item, e.g., as partof or in association with the second control. The static image can belocated outside of the selected video content item, e.g., located nextto the selected video content item or in a particular locationassociated with advertisements. The static image can be the first frameof a sponsored video content item, the final frame displayed to theuser, or a frame identified previously as being representative of thesponsored video content item, e.g., by the system, an advertiser, or athird party.

Information identifying that the user has interacted with the secondcontrol is received (step 310). For example, the content re-presentationsystem 202 can receive information from the user device identifying thatthe user has interacted with the second control, and wants to re-viewthe first content item, e.g., the video advertisement. The interactioncan include the user clicking on the second control, or swiping on thesecond control, to name a few examples. In some implementations where astatic image is the second control, the information can identify that auser has interacted with the static image, e.g., the user clicked on thestatic image.

In some implementations, upon receipt of an interaction with the secondcontrol, the content re-presentation system 202 can store the state ofthe selected content item and pause the playing of the selected contentitem. The state can identify a play time of the selected video contentitem, and the content re-presentation system 202 can associate the statewith the user/user device.

The first content item, e.g., the video advertisement, is provided forre-presentation on the user device (step 312). For example, in responseto receiving an interaction with the second control, the contentre-presentation system provides the video advertisement forre-presentation. In some implementations the system can access theinformation associated with the user, e.g., the particular videoadvertisement and play time of the video advertisement, obtain the videoadvertisement based on the information, and provide the videoadvertisement for re-presentation on the user device from the start ofthe video advertisement. In some implementations the system can accessthe information associated with the user, and provide the videoadvertisement from the playing time of the first content item, e.g., thevideo advertisement, for re-presentation on the user device.

Additionally, in some implementations, the content re-presentationsystem 202 can again provide a first control with the re-presented firstcontent item, e.g. replayed video advertisement, to facilitate skippingthe first content item a second time. Upon receiving an interaction withthe first control, the content re-presentation system can provide theoriginally selected video content item for re-presentation on the userdevice. In some implementations the system can access the stored stateof the video content item associated with the user, and provide thevideo content item from the play time identified by the state.

In some implementations the content re-presentation system 202 canprovide a modified first content item in response to a request forre-presentation, e.g., a video advertisement with a shorter play timethan the initial/original video advertisement provided to the user. Forexample, the content re-presentation system 202 can determine that theplay time of the video advertisement was below a threshold, e.g., 3, 5,or 7 seconds, and provide a shorter version of the advertisement forre-presentation. In some implementations, the threshold can be a globalthreshold generic to all video advertisements. Alternatively, thethreshold can be specific to each video advertisement, e.g., defined bythe advertiser of the advertisement or determined through heuristics ofuser habits viewing the video advertisement, e.g., the contentre-presentation system 202 can store watch times of the videoadvertisement across multiple users and store the average watch time asthe threshold.

Additionally, the content re-presentation system 202 can access adatabase storing versions of the first content item, e.g., the videoadvertisement, that are mapped to particular user play times of theinitially presented first content item, and obtain a specific versionbased on the mapping. In some implementations, the database can includean optimal version of a video advertisement that is based on the playtime of the initially presented video advertisement, e.g., the versionof the video advertisement most effective with users that watched theinitial video advertisement for a specific play time. Entries in thedatabase can be determined based on the probability that a user willwatch the version of the video advertisement given that they watched theinitial video advertisement for a specific play time. The contentre-presentation system 202 can determine the respective probabilitiesfrom historical data of users, e.g., the system can correlate aparticular play time of an initial video advertisement, with thepercentage of users that watched the entirety of alternative versions ofthe video advertisement.

In some implementations the content re-presentation system 202 canprovide a different first content item in response to there-presentation request. For example, the system can provide a videoadvertisement from a different advertiser, or a different videoadvertisement from the same advertiser. In some implementations thesystem can provide a different video advertisement upon determining thatthe play time of the initial video advertisement was below a threshold,e.g., 1, 2, or 3 seconds.

The content re-presentation system 202 can associate a cost with theinitial presentation of the first content item, e.g., a charge to theadvertiser of the video advertisement for presenting the videoadvertisement to the user, and a second cost for re-presentation of thefirst content item. In some implementations the second cost can behigher than the first cost.

In some implementations the re-presentation system can provide a webpage of the sponsor, e.g., advertiser, of the first content item to theuser. That is, the system can provide the web page of the sponsorinstead of re-presenting the first content item. In some implementationsthe system can provide the web page in addition to re-presenting thefirst content item, or provide the web page upon the user completingviewing the first content item.

Upon the completion of a presentation of the first content item, thesystem can provide the selected video content item for re-presentationon the user device. In some implementations the system can access thestored state of the selected video content item associated with theprior presentation to the user, and provide the video content item fromthe play time identified by the state.

FIG. 4 is a block diagram of an example data processing apparatus 400that can implement the content re-presentation system. While only onedata processing apparatus is shown in FIG. 4, the contentre-presentation system may consist of multiple data processingapparatus.

The data processing apparatus 400 can have hardware or firmware devicesconnected by a bus 410, including one or more processors 402, computerreadable medium 404 to store instructions and data, and one or more userinterface devices 406. Examples of user interface devices 406 include adisplay, a camera, a speaker, a microphone, a tactile feedback device, akeyboard, and a mouse. The data processing apparatus 400 includes acommunication interface 408 to communicate with other data processingapparatus over the Internet, a LAN, or a WAN.

Although an example processing system has been described in FIG. 4,implementations of the subject matter and the functional operationsdescribed in this specification can be implemented in other types ofdigital electronic circuitry, or in computer software, firmware, orhardware, including the structures disclosed in this specification andtheir structural equivalents, or in combinations of one or more of them.

Embodiments of the subject matter and the operations described in thisspecification can be implemented in digital electronic circuitry, or incomputer software, firmware, or hardware, including the structuresdisclosed in this specification and their structural equivalents, or incombinations of one or more of them. Embodiments of the subject matterdescribed in this specification can be implemented as one or morecomputer programs, i.e., one or more modules of computer programinstructions, encoded on computer storage medium for execution by, or tocontrol the operation of, data processing apparatus. Alternatively or inaddition, the program instructions can be encoded on anartificially-generated propagated signal, e.g., a machine-generatedelectrical, optical, or electromagnetic signal, that is generated toencode information for transmission to suitable receiver apparatus forexecution by a data processing apparatus. A computer storage medium canbe, or be included in, a computer-readable storage device, acomputer-readable storage substrate, a random or serial access memoryarray or device, or a combination of one or more of them. Moreover,while a computer storage medium is not a propagated signal, a computerstorage medium can be a source or destination of computer programinstructions encoded in an artificially-generated propagated signal. Thecomputer storage medium can also be, or be included in, one or moreseparate physical components or media (e.g., multiple CDs, disks, orother storage devices).

The operations described in this specification can be implemented asoperations performed by a data processing apparatus on data stored onone or more computer-readable storage devices or received from othersources.

The term “data processing apparatus” encompasses all kinds of apparatus,devices, and machines for processing data, including by way of example aprogrammable processor, a computer, a system on a chip, or multipleones, or combinations, of the foregoing The apparatus can includespecial purpose logic circuitry, e.g., an FPGA (field programmable gatearray) or an ASIC (application-specific integrated circuit). Theapparatus can also include, in addition to hardware, code that createsan execution environment for the computer program in question, e.g.,code that constitutes processor firmware, a protocol stack, a databasemanagement system, an operating system, a cross-platform runtimeenvironment, a virtual machine, or a combination of one or more of them.The apparatus and execution environment can realize various differentcomputing model infrastructures, such as web services, distributedcomputing and grid computing infrastructures.

A computer program (also known as a program, software, softwareapplication, script, or code) can be written in any form of programminglanguage, including compiled or interpreted languages, declarative orprocedural languages, and it can be deployed in any form, including as astand-alone program or as a module, component, subroutine, object, orother unit suitable for use in a computing environment. A computerprogram may, but need not, correspond to a file in a file system. Aprogram can be stored in a portion of a file that holds other programsor data (e.g., one or more scripts stored in a markup languagedocument), in a single file dedicated to the program in question, or inmultiple coordinated files (e.g., files that store one or more modules,sub-programs, or portions of code). A computer program can be deployedto be executed on one computer or on multiple computers that are locatedat one site or distributed across multiple sites and interconnected by acommunication network.

The processes and logic flows described in this specification can beperformed by one or more programmable processors executing one or morecomputer programs to perform actions by operating on input data andgenerating output. The processes and logic flows can also be performedby, and apparatus can also be implemented as, special purpose logiccircuitry, e.g., an FPGA (field programmable gate array) or an ASIC(application-specific integrated circuit).

Processors suitable for the execution of a computer program include, byway of example, both general and special purpose microprocessors, andany one or more processors of any kind of digital computer. Generally, aprocessor will receive instructions and data from a read-only memory ora random access memory or both. The essential elements of a computer area processor for performing actions in accordance with instructions andone or more memory devices for storing instructions and data. Generally,a computer will also include, or be operatively coupled to receive datafrom or transfer data to, or both, one or more mass storage devices forstoring data, e.g., magnetic, magneto-optical disks, or optical disks.However, a computer need not have such devices. Moreover, a computer canbe embedded in another device, e.g., a mobile telephone, a personaldigital assistant (PDA), a mobile audio or video player, a game console,a Global Positioning System (GPS) receiver, or a portable storage device(e.g., a universal serial bus (USB) flash drive), to name just a few.Devices suitable for storing computer program instructions and datainclude all forms of non-volatile memory, media and memory devices,including by way of example semiconductor memory devices, e.g., EPROM,EEPROM, and flash memory devices; magnetic disks, e.g., internal harddisks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROMdisks. The processor and the memory can be supplemented by, orincorporated in, special purpose logic circuitry.

To provide for interaction with a user, embodiments of the subjectmatter described in this specification can be implemented on a computerhaving a display device, e.g., a CRT (cathode ray tube) or LCD (liquidcrystal display) monitor, for displaying information to the user and akeyboard and a pointing device, e.g., a mouse or a trackball, by whichthe user can provide input to the computer. Other kinds of devices canbe used to provide for interaction with a user as well; for example,feedback provided to the user can be any form of sensory feedback, e.g.,visual feedback, auditory feedback, or tactile feedback; and input fromthe user can be received in any form, including acoustic, speech, ortactile input. In addition, a computer can interact with a user bysending documents to and receiving documents from a device that is usedby the user; for example, by sending web pages to a web browser on auser's client device, e.g., user device, in response to requestsreceived from the web browser.

Embodiments of the subject matter described in this specification can beimplemented in a computing system that includes a back-end component,e.g., as a data server, or that includes a middleware component, e.g.,an application server, or that includes a front-end component, e.g., aclient computer having a graphical user interface or a Web browserthrough which a user can interact with an implementation of the subjectmatter described in this specification, or any combination of one ormore such back-end, middleware, or front-end components. The componentsof the system can be interconnected by any form or medium of digitaldata communication, e.g., a communication network. Examples ofcommunication networks include a local area network (“LAN”) and a widearea network (“WAN”), an inter-network (e.g., the Internet), andpeer-to-peer networks (e.g., ad hoc peer-to-peer networks).

The computing system can include clients and servers. A client andserver are generally remote from each other and typically interactthrough a communication network. The relationship of client and serverarises by virtue of computer programs running on the respectivecomputers and having a client-server relationship to each other. In someembodiments, a server transmits data (e.g., an HTML page) to a clientdevice (e.g., for purposes of displaying data to and receiving userinput from a user interacting with the client device). Data generated atthe client device (e.g., a result of the user interaction) can bereceived from the client device at the server.

While this specification contains many specific implementation details,these should not be construed as limitations on the scope of anyinventions or of what may be claimed, but rather as descriptions offeatures specific to particular embodiments of particular inventions.Certain features that are described in this specification in the contextof separate embodiments can also be implemented in combination in asingle embodiment. Conversely, various features that are described inthe context of a single embodiment can also be implemented in multipleembodiments separately or in any suitable subcombination. Moreover,although features may be described above as acting in certaincombinations and even initially claimed as such, one or more featuresfrom a claimed combination can in some cases be excised from thecombination, and the claimed combination may be directed to asubcombination or variation of a subcombination.

Similarly, while operations are depicted in the drawings in a particularorder, this should not be understood as requiring that such operationsbe performed in the particular order shown or in sequential order, orthat all illustrated operations be performed, to achieve desirableresults. In certain circumstances, multitasking and parallel processingmay be advantageous. Moreover, the separation of various systemcomponents in the embodiments described above should not be understoodas requiring such separation in all embodiments, and it should beunderstood that the described program components and systems cangenerally be integrated together in a single software product orpackaged into multiple software products.

Thus, particular embodiments of the subject matter have been described.Other embodiments are within the scope of the following claims. In somecases, the actions recited in the claims can be performed in a differentorder and still achieve desirable results. In addition, the processesdepicted in the accompanying figures do not necessarily require theparticular order shown, or sequential order, to achieve desirableresults. In certain implementations, multitasking and parallelprocessing may be advantageous.

What is claimed is:
 1. A method comprising: in response to receiving arequest to view a video content item, providing a video advertisementfor presentation on a user device along with the video content item;receiving first information indicating that a user of the user devicewants to skip the video advertisement; terminating presentation of thevideo advertisement, responsive to receiving the first information;initiating presentation of the video content item; providing a controlfacilitating re-presentation of the video advertisement; associating thevideo advertisement with a first cost; providing the video advertisementfor re-presentation to the user device responsive to receiving secondinformation indicating that the user of the user device has interactedwith the control facilitating re-presentation of the videoadvertisement; and in response to providing the video advertisement forre presentation, associating the video advertisement with a second costgreater than the first cost.
 2. The method of claim 1, wherein providingthe video advertisement further comprises: obtaining a static image fromthe video advertisement; and providing the static image for presentationalong with the video content item.
 3. The method of claim 1 furthercomprising: determining a state of the video advertisement.
 4. Themethod of claim 3, further comprising: determining, from the state ofthe video advertisement, that a play time of the video advertisement isgreater than a threshold; and in response to the determination that theplay time of the video advertisement is greater than the threshold,providing the control to facilitate re presentation of the videoadvertisement.
 5. The method of claim 3, further comprising:determining, from the state of the video advertisement, that a play timeof the video advertisement is less than a threshold; and in response tothe determination that the play time of the video advertisement is lessthan the threshold, providing the control to facilitate re presentationof the video advertisement.
 6. The method of claim 3, wherein providingthe video advertisement for re presentation comprises: determining aplay time of the video advertisement from the state of the videoadvertisement; and providing the video advertisement for presentation tothe user device, wherein the video advertisement is provided from theplay time.
 7. The method of claim 3, wherein providing the videoadvertisement for re presentation comprises: determining, from the stateof the video advertisement, that a play time of the video advertisementis less than a threshold; and providing a video advertisement with ashorter play time for presentation to the user device.
 8. The method ofclaim 1, wherein providing the video advertisement for re presentationcomprises: providing a second control to facilitate skipping the videoadvertisement.
 9. The method of claim 1, wherein providing the videoadvertisement for re presentation comprises: providing a different videoadvertisement for presentation to the user device.
 10. The method ofclaim 1 further comprising: redirecting the user device to a web page ofa sponsor of the video advertisement.
 11. The method of claim 1, furthercomprising providing the control to facilitate re presentation of thevideo advertisement.
 12. A system comprising: one or more computers andone or more storage devices storing instructions that are operable, whenexecuted by the one or more computers, to cause the one or morecomputers to perform operations comprising: in response to receiving arequest to view a video content item, providing a video advertisementfor presentation on a user device along with the video content item;receiving first information indicating that a user of the user devicewants to skip the video advertisement; terminating presentation of thevideo advertisement, responsive to receiving the first information;initiating presentation of the video content item; providing a controlfacilitating re-presentation of the video advertisement; associating thevideo advertisement with a first cost; providing the video advertisementfor re presentation to the user device responsive to receiving secondinformation indicating that the user of the user device has interactedwith the control facilitating re-presentation of the videoadvertisement; and in response to providing the video advertisement forre presentation, associating the video advertisement with a second costgreater than the first cost.
 13. The system of claim 12, whereinproviding the video advertisement further comprises: obtaining a staticimage from the video advertisement; and providing the static image forpresentation along with the video content item.
 14. The system of claim12, wherein providing the video advertisement for re presentationcomprises: providing a second control to facilitate skipping the videoadvertisement.
 15. The system of claim 12, the operations furthercomprising: determining a state of the video advertisement; determining,from the state of the video advertisement, that a play time of the videoadvertisement is greater than a threshold; and in response to thedetermination that the play time of the video advertisement is greaterthan the threshold, providing the control to facilitate re presentationof the video advertisement.
 16. The system of claim 12, the operationsfurther comprising: determining a state of the video advertisement;determining, from the state of the video advertisement, that a play timeof the video advertisement is less than a threshold; and in response tothe determination that the play time of the video advertisement is lessthan the threshold, providing the control to facilitate re presentationof the video advertisement.
 17. A computer program product, encoded onone or more non-transitory computer storage media, comprisinginstructions that when executed by one or more computers cause the oneor more computers to perform operations comprising: in response toreceiving a request to view a video content item, providing a videoadvertisement for presentation on a user device along with the videocontent item; receiving first information indicating that a user of theuser device wants to skip the video advertisement; terminatingpresentation of the video advertisement, responsive to receiving thefirst information; initiating presentation of the video content item;providing a control facilitating re-presentation of the videoadvertisement; responsive to receiving second information indicatingthat the user of the user device has interacted with the controlfacilitating re presentation of the video advertisement, providing thevideo advertisement for re presentation to the user device; associatingthe video advertisement with a first cost; and in response to providingthe video advertisement for re presentation, associating the videoadvertisement with a second cost greater than the first cost.
 18. Thecomputer program product of claim 17, wherein providing the videoadvertisement further comprises: obtaining a static image from the videoadvertisement; and providing the static image for presentation alongwith the video content item.
 19. The computer program product of claim17, wherein providing the video advertisement for re presentationcomprises: providing a second control to facilitate skipping the videoadvertisement.